package com.example.demo.controller;

import com.example.demo.dao.StuDao;
import com.example.demo.entity.Stus;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import java.util.List;

/**
 * 接口控制类，负责给前端提供访问路径
 */
@RestController//接口注解，告诉springboot这是一个接口控制类
public class HelloController {

    @Resource//自动实例化注解
    StuDao stuDao;//学生数据库操作类

//    @Resource
//    ClassDao classDao;

    //插入学生信息，接收前端的三个参数，name，sex classId
    //调用方式 http://localhost:8080/insert?name=ss&sex=男&classId=1
    @GetMapping("/insert")
    public String insert(String name,String sex,int classId){

        int result = stuDao.insert(name,sex,classId);//调用数据库操作类
        if(result==1){
            return "插入成功";
        }else {
            return "插入失败";
        }
    }
    //返回所有学生信息 json格式的方式返回
    //调用方式 http://localhost:8080/getAll
    //[{"name":"蓝鸟","id":1,"sex":"男","classId":1},{"name":"黄","id":2,"sex":"男","classId":1},{"name":"海","id":3,"sex":"女","classId":2},{"name":"李","id":4,"sex":"女","classId":2},{"name":"张","id":5,"sex":"女","classId":2}]
    @GetMapping("/getAll")
    public List<Stus> getAll(){
        return  stuDao.getAll();//获取所有学生信息
    }
    //xml配置调用
    //调用方式 http://localhost:8080/getAllStu
    @GetMapping("/getAllStu")
    public List<Stus> getAllStu(){
        return  stuDao.getAllStu();//获取所有学生信息
    }

    //删除指定ID的学生信息
    //调用方式 http://localhost:8080/delete?id=1
    @GetMapping("/delete")
    public String delete(int id){
        int result = stuDao.delete(id);
        if(result==1){
            return "删除成功";
        }else {
            return "删除失败";
        }
    }

    //更新指定ID的学生信息
    //调用方式 http://localhost:8080/update?id=1&name=lan
    @GetMapping("/update")
    public String update(int id,String name){
        int result = stuDao.update(id,name);
        if(result==1){
            return "更新成功";
        }else {
            return "更新失败";
        }
    }
    //更新指定ID的学生信息  xml配置
    //调用方式 http://localhost:8080/updateStu?id=1&name=lan
    @GetMapping("/updateStu")
    public String updateStu(int id,String name){
        int result = stuDao.updateStu(id,name);
        if(result==1){
            return "更新成功";
        }else {
            return "更新失败";
        }
    }




}
